.. _ecmIxMot_Arc3P_R_Start: ecmIxMot_Arc3P_R_Start =========================== --------------------------- .. Hint:: :ref:`ECAT_Appendix_00` 사용 가능 SYNOPSIS -------- .. code-block:: none t_cmdidx ecmIxMot_Arc3P_R_Start(_FF)( t_i32 NetID, t_i32 MapIndex, t_f64 P2_XOffset, t_f64 P2_YOffset, t_f64 P3_XOffset, t_f64 P3_YOffset, t_f64 EndAngle, t_i32 *ErrCode ) DESCRIPTION ----------- - 현재 좌표와 두점의 상대좌표를 통하여 원호보간을 이송을 수행합니다, - ecmIxMot_Arc3P_R_Start(_FF) 는 모션을 시작시킨 후에 바로 반환됩니다. PARAMETER --------- - NetID : Network 번호 - MapIndex : 맵 번호 - P2_XOffset : 두번째 점 X축 상대좌표 값. - P2_YOffset : 두번째 점 Y축 상대좌표 값. - P3_XOffset : 세번째 점 X축 상대좌표 값. - P3_YOffset : 세번째 점 Y축 상대좌표 값. - EndAngle : 현재 좌표에서 원하는 위치까지의 각도를 나타냅니다. 현재 좌표에서 세 점을 통해 만들어지는 원위를 이 파라미터 값만큼 보간이송 합니다. - ErrCode : 이 매개 변수를 통하여 현재의 에러 코드를 반환합니다. 단, 이 매개 변수에 NULL을 전달하면 에러 코드를 반환하지 않습니다. RETURN VALUE ------------ - 이 리턴값은 함수의 cmdidx가 반환됩니다. EXAMPLE ````````````` .. code-block:: cpp :linenos: //본 예제는 ecmMxMot_MoveStart사용하여 두 축을 절대 좌표5000으로 이동하는 예 입니다. #include "ComiEcatSdk_Api.h" #define AXIS0 0 #define AXIS1 1 #define MAP0 0 #define MAP1 1 t_32 Error_Num = 0;//함수 별 에러 코드 저장 변수 /*************************************************************** * 프로그램 앞 부분은 생략 (설정 부분 다 생략) ***************************************************************/ /*************************************************************** * DO_Motion: 작업 명령 시에 호출되는 가상의 함수 입니다. ***************************************************************/ void DO_Motion() { ecmIxMot_Arc3P_R_Start(Device_Info.NetIdx, MAP1, 300, -300, 500, -500, 90, &Error_Num); }